package com.yunxin.core.infra.persistence.entity.product;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 产品预付款记录
 *
 * @author zero°
 * @since   2023-12-16
 */
public class ProductAdvanceChargeRecordDO implements Serializable {
    /**
     * 主键
     */
    private Long id;

    /**
     * 预付款日期
     */
    private Date advanceChargeDate;

    /**
     * 商户id
     */
    private Long merchantId;

    /**
     * 产品id
     */
    private Long productId;

    /**
     * 结算类型 1.UV 2.注册 3.表单
     */
    private Integer settlementType;

    /**
     * 结算单价
     */
    private BigDecimal settlementUnitPrice;

    /**
     * 结算数量
     */
    private Integer settlementNumber;

    /**
     * 预付款金额
     */
    private BigDecimal advanceChargeAmount;

    /**
     * 备注
     */
    private String remark;

    /**
     * 标识删除 0.存在 1.删除
     */
    private Integer isDel;

    /**
     * 创建人
     */
    private String creator;

    /**
     * 修改人
     */
    private String editor;

    /**
     * 创建时间
     */
    private Date createTime;

    /**
     * 更新时间
     */
    private Date editTime;

    /**
     * 版本号
     */
    private Long version;

    private static final long serialVersionUID = 1L;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Date getAdvanceChargeDate() {
        return advanceChargeDate;
    }

    public void setAdvanceChargeDate(Date advanceChargeDate) {
        this.advanceChargeDate = advanceChargeDate;
    }

    public Long getMerchantId() {
        return merchantId;
    }

    public void setMerchantId(Long merchantId) {
        this.merchantId = merchantId;
    }

    public Long getProductId() {
        return productId;
    }

    public void setProductId(Long productId) {
        this.productId = productId;
    }

    public Integer getSettlementType() {
        return settlementType;
    }

    public void setSettlementType(Integer settlementType) {
        this.settlementType = settlementType;
    }

    public BigDecimal getSettlementUnitPrice() {
        return settlementUnitPrice;
    }

    public void setSettlementUnitPrice(BigDecimal settlementUnitPrice) {
        this.settlementUnitPrice = settlementUnitPrice;
    }

    public Integer getSettlementNumber() {
        return settlementNumber;
    }

    public void setSettlementNumber(Integer settlementNumber) {
        this.settlementNumber = settlementNumber;
    }

    public BigDecimal getAdvanceChargeAmount() {
        return advanceChargeAmount;
    }

    public void setAdvanceChargeAmount(BigDecimal advanceChargeAmount) {
        this.advanceChargeAmount = advanceChargeAmount;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public Integer getIsDel() {
        return isDel;
    }

    public void setIsDel(Integer isDel) {
        this.isDel = isDel;
    }

    public String getCreator() {
        return creator;
    }

    public void setCreator(String creator) {
        this.creator = creator;
    }

    public String getEditor() {
        return editor;
    }

    public void setEditor(String editor) {
        this.editor = editor;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getEditTime() {
        return editTime;
    }

    public void setEditTime(Date editTime) {
        this.editTime = editTime;
    }

    public Long getVersion() {
        return version;
    }

    public void setVersion(Long version) {
        this.version = version;
    }
}